%-----------------------------------------------------------------------------
\chapter{Conclusion}
%-----------------------------------------------------------------------------
Es wurde aufgezeigt wie die in der Zielsetzung definierte
Berechtigungsprüfung auf, dem ak"-tu"-el"-len Stand der Technik
entsprechenden, Java Enterprise Edition Ap"-pli"-ka"-ti"-ons"-servern, unter
Verwendung von standardisierten Schnittstellen, umgesetzt werden kann. Dies in
einer Art und Weise sodass bestehende Berechtigungsprüfungsverfahren
weiterverwendet sowie die einzelnen Komponenten derartig unabhängig voneinander
sind dass sie beliebig ausgetauscht werden können ohne sie verwendente Applikationen
anpassen zu müssen. Auch konnte das Verfahren, ohne programmatische Anpassungen
vornehmen zu müssen, auf den hierfür herangezogenen sowie unterschiedlichen Java
EE Applikationsservern in Zusammenspiel mit einer JavaServer Faces Anwendung
eingesetzt werden. Hierfür sind bei den Applikationsservern die aufgezeigten
Installations- sowie Konfigurationsschritte notwendig. Sowie müssen die
JavaServer Faces Anwendung\-en die aufgezeigten Inhalte in den jeweiligen
Deployment Descriptoren bereitstellen. Da alle Java Enterprise Edition Version 6
kompatiblen Applikationsserver, aufgrund ebendieser Spezifikation, die JASPIC
sowie JAAS Schnittstelle unterstützen müssen kann davon ausgegangen werden dass
das beschriebene Verfahren auf allen zu dieser Spezifikation kompatiblen Servern
einsetzbar ist.
\newline


\section{JAAS}
Die JAAS Schnittstelle ist aufgrund Ihrer offenen Struktur da 

\begin{itemize}
  \item 
  sie zu einem großen Teil, bis auf wenige Ausnahmen, nur zu implementierende
  Interfaces vorschreibt,
  \item
  die zur Laufzeit tatsächlich anzuwendenden Loginmodule aus einer
  Konfigurationsdatei gelesen werden können,
  \item
  sie, mit Ausnahme des Subjects, mit Ihrer Umgebung Informationen über
  Callbacks austauscht
\end{itemize}

in höchstem Maße flexibel und generisch. Auch kann aufgrund der Standardisierung
sowie der Tatsache dass sie bereits sehr lange Teil der Java Platform Standard
Edition ist davon ausgegangen werden dass sie auf allen Java EE
Applikationsservern gleichermaßen einsetzbar ist.


\section{JASPIC}
Die JASPIC Schnittstelle ist da  

\begin{itemize}
  \item 
  für den Anwendungsfall nur ein Inerface implementiert werden mußte,
  \item
  sie Mitteilungen aus 
  \item
  sie mit der sie aufrufenden Umgebung Informationen über
  Callbacks austauscht
\end{itemize}

ebenfalls sehr flexibel sowie in höchstem Maße vielseitig einsetzbar. Auch kann
aufgrund des gezeigten Anwendungsfalles sowie der Standardisierung davon
ausgegangen werden dass sie auf allen Java Enterprise Edition 6 kompatiblen
Applikationsservern gleichermaßen einsetzbar ist.



  
 

\section{Possible Improvements}
Derzeit muß das vorliegende JASPIC Modul bei jeder Anfrage der BenutzerIn alle
für die Berechtigungsprüfung notwendigen Daten von der dahinter liegenden
Datenbank holen. Dies ist vor allem bei Webanwendungen sehr ressourcenintensiv
da mitunter innerhalb weniger Sekunden von den Browsern viele asynchrone
Anfragen abgeschickt werden können. Daher würde ein dementsprechendes Caching
der JASPIC Implementierung, beispielsweise im Ausmaß von 5 Sekunden, keine
nennenswerten funktionallen Nachteile bringen jedoch Ressourcen schonen sowie
die Ausführungsgeschwindigkeit der darauf aufbauenden Webanwendungen erhöhen.




\section{Unresolved Problems}
%-----------------------------------------------------------------------------

Die Tatsache dass die unterschiedlichen Applikationssserver spezifische und
nicht standardisierte Deployment Descriptoren benötigen um den beteffenden 
Ap\-pli\-ka\-tionen das JASPIC Modul zur Berechtigungsprüfung bereitstellen zu
können unterbindet nicht nur die Interoperabilität der einzelnen darauf aufbauenden
Anwendungen. Sondern schränkt, in gewisser Weise, auch die Anwendbarkeit der
vorliegenden Berechtigungsprüfung sowie der JASPIC Schnittstelle, wenn sie für
Berechtigungsprüfungsroutinen herangezogen wird, ein. Dahingehende
Verbesser\-ungen würden daher nicht nur die Interoperabilität von spezifischen
Webanwendungen an sich erhöhen sondern auch den Java Enterprise Edition
Standard stärken.
  






%-----------------------------------------------------------------------------
\section{Conclusions and suggestions} Haui 
%-----------------------------------------------------------------------------
Es erscheint untersuchenswert inwieweit die Verwendung der Java Authorization
Contract for Containers Schnittstelle fein granularere Berechtigungsprüfungen als die
vorliegende Umsetzung erlauben würde. Dies beispielsweise um kontextsensitive
Autorisierungsentscheidungen in Bezug auf übergebene Parameter der
HTTP-Anfrage zu unterstützen.



